package com.bkgy.modular.tbpaopianpdodata.service;

import com.alibaba.fastjson.JSONObject;
import com.bkgy.modular.tbpaopianpdodata.entity.TbPaopianPdoData;
import com.bkgy.modular.tbpaopianpdodata.entity.select_value;
import com.bkgy.sys.common.entity.ResultData;

import javax.servlet.http.HttpServletResponse;
import java.util.List;

/**
 * 连退跑偏历史记录接口服务类
 *
 * @author 生成器生成
 * @date 2022-08-03 17:10:29
 */
public interface TbPaopianPdoDataService {

    /**
     * 添加记录
     *
     * @param data   json字符串
     * @param userId 用户id
     * @param sname  用户姓名
     */
    ResultData insertDataTbPaopianPdoData(String data, Long userId, String sname);

    /**
     * 根据主键删除对象
     *
     * @param indocno 对象主键
     */
    ResultData deleteDataTbPaopianPdoDataOne(Long indocno);

    /**
     * 根据主键字符串删除多个对象
     *
     * @param str_id 对象主键字符串
     */
    ResultData deleteDataTbPaopianPdoDataMany(String str_id);

    /**
     * 修改记录
     *
     * @param data   json字符串
     * @param userId 用户id
     * @param sname  用户姓名
     */
    ResultData updateDataTbPaopianPdoData(String data, Long userId, String sname);

    /**
     * 分页查看记录
     *
     * @param data 分页参数字符串
     */
    ResultData findDataTbPaopianPdoDataByPage(String data);

    /**
     * 不分页查看记录
     *
     * @param data 分页参数字符串
     */
    ResultData findDataTbPaopianPdoDataByPage3(String data);

    /**
     * 分页查看记录
     *
     * @param data 分页参数字符串
     */
    ResultData findDataTbPaopianPdoDataByPage2(String data);

    /**
     * 查看一条数据信息
     *
     * @param data 分页参数字符串
     */
    ResultData findDataTbPaopianPdoDataByIndocno(String data);

    /**
     * 查看记录
     */
    List<TbPaopianPdoData> findDataTbPaopianPdoData();

    ResultData findDataTbPaopianPdoDatatuxie(String data);

    ResultData findDataTbPaopianPdoonetwo(String data);

    ResultData findHighestSteelGradeByDate(String data);

    ResultData findHighestSpecificationsByDate(String data);

    List<select_value> findDataTbPaopianPdoDataselect(String data);

    /**
     * 连退跑偏归档统计分析查询
     */
    ResultData findlx(JSONObject jsonObject);

    /**
     * 时间区域分析
     */
    ResultData findTime(String data);

    void export(JSONObject jsonObject, HttpServletResponse response);

     /**
      * 跑偏记录和酸扎曲线的归一化(固定延迟)
      */
    void normWithTcm();
}
